package com.youlai.boot.system.model.form;

import java.io.Serial;
import java.io.Serializable;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.Setter;

import java.time.LocalDate;
import java.time.LocalDateTime;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.hibernate.validator.constraints.Length;

import java.math.BigDecimal;

/**
 * 油气项目后评价表单对象
 *
 * @author 李文兵
 * @since 2025-05-29 11:14
 */
@Getter
@Setter
@Schema(description = "油气项目后评价表单对象")
public class SysYouqitouziForm implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;
    private Long id;

    @Schema(description = " touziId")
    private Long touziId;

    @Schema(description = "0基本设计批复方案 1实施情况（后评价）")
    private Integer type;

    @Schema(description = "项目名称")
    @Length(max=32, message="项目名称长度不能超过32个字符")
    private String xmmc1;

    @Schema(description = "分公司")
    @Length(max=32, message="分公司长度不能超过32个字符")
    private String fgs2;

    @Schema(description = "海域")
    @Length(max=32, message="海域长度不能超过32个字符")
    private String hy3;

    @Schema(description = "地理位置")
    @Length(max=32, message="地理位置长度不能超过32个字符")
    private String dlwz4;

    @Schema(description = "所属构造单元")
    @Length(max=32, message="所属构造单元长度不能超过32个字符")
    private String ssgzdy5;

    @Schema(description = "油气藏类型")
    @Length(max=32, message="油气藏类型长度不能超过32个字符")
    private String yqzlx6;

    @Schema(description = "平均水深")
    private BigDecimal pjss7;

    @Schema(description = "主要相关单位")
    @Length(max=32, message="主要相关单位长度不能超过32个字符")
    private String zyxgdw8;

    @Schema(description = "建设起止时间")
    @Length(max=32, message="建设起止时间长度不能超过32个字符")
    private String jsqzsj9;

    @Schema(description = "投产时间")
    private LocalDate tcsj10;

    @Schema(description = "后评价范围")
    @Length(max=32, message="后评价范围长度不能超过32个字符")
    private String hpjfw11;

    @Schema(description = "后评价时点")
    private LocalDate hpjsd12;

    @Schema(description = "投产时间")
    @Length(max=32, message="投产时间长度不能超过32个字符")
    private String tcsj1;

    @Schema(description = "建设内容和规模")
    @Length(max=32, message="建设内容和规模长度不能超过32个字符")
    private String jsnrhgm2;

    @Schema(description = "高峰产能（油气当量）")
    private BigDecimal gfcn3;

    @Schema(description = "技术生产年限")
    @Length(max=32, message="技术生产年限长度不能超过32个字符")
    private String jsscnx4;

    @Schema(description = "经济年限")
    @Length(max=32, message="经济年限长度不能超过32个字符")
    private String jjnx5;

    @Schema(description = "原油（凝析油）经济累产")
    private BigDecimal yyjjlc6;


}
